/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


import java.util.Random;

/**
 *
 * @author pierrotws
 */
public abstract class MonteCarlo {
    protected static double simulation(int z, double S,double X,double drift,double vSqrdt, int nSteps, Random random){
        double St = S;
        for (int j=0;j<nSteps;j++){
            St *= Math.exp(drift + vSqrdt * random.nextGaussian());
        }
        return Math.max(z * (St - X), 0);
    }
    public abstract double monteCarloStandardOption(char CallPutFlag,double S,double X,double T,double r,double b,
                                                   double v,int nSteps,int nSimulations);
}
